package com.itheima;

import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import java.util.function.BiConsumer;

public class MapDemo {
    public static  void main(String[] args){
        Map<String,Double> map  = new HashMap<>();
        map.put("张三",99.0);
        map.put("李四",89.0);
        map.put("王五",79.0);
        map.put("赵六",69.0);
        map.put("赵六",59.0);
        System.out.println(map);

        map.remove("李四");
        System.out.println(map);
        //3. 判断集合中是否包含指定的键
        boolean b  = map.containsKey("李四");
        System.out.println(b);
        //4. 判断集合中指定的值是否存在
        boolean b1 = map.containsValue(99.0);
        System.out.println(b1);
        //5. 判断集合是否为空
        boolean emppty = map.isEmpty();
        System.out.println("empty = "+emppty);
        //6. 获取集合中的键值对个数
        System.out.println(map.size());
        System.out.println("----------");
        //test1();
        //test2();
        test3();
    }
    public static void test3(){
        Map<String,Double> map = new HashMap<>();
        map.put("张三",99.0);
        map.put("李四",89.0);
        map.put("王五",79.0);
        map.put("赵六",69.0);
        map.put("赵六",59.0);
        //1.遍历map集合，使用foreach遍历
        map.forEach((key, value) -> System.out.println(key + " : " + value));
    }
    public static void test2(){
        Map<String,Double> map = new HashMap<>();
        map.put("张三",99.0);
        map.put("李四",89.0);
        map.put("王五",79.0);
        map.put("赵六",69.0);
        map.put("赵六",59.0);
        //1.将map集合转成set集合，(将map中的key-value绑定成一个对象entry)
        Set<Map.Entry<String, Double>> entrySet = map.entrySet();
        //2. 遍历set集合，取出entry对象
        for (Map.Entry<String, Double> entry : entrySet) {
            String key = entry.getKey();
            Double value = entry.getValue();
            System.out.println(key+" : "+value);
        }
    }
    public static void test1(){
        Map<String, Double> map = new HashMap<>();
        map.put("张三",99.0);
        map.put("李四",89.0);
        map.put("王五",79.0);
        map.put("赵六",69.0);
        map.put("赵六",59.0);
        //将map中所有的键值取出来放到set集合中
        Set<String> keySet = map.keySet();
        //遍历set集合
        for (String key : keySet) {
            //根据key获取value
            Double value = map.get(key);
            System.out.println(key+" : "+value);
        }

    }

    public static void test0(){
        Map<String,Double> map = new HashMap<>();
        map.put("张三",99.0);
        map.put("李四",89.0);
        map.put("王五",79.0);
        map.put("赵六",69.0);
        map.put("赵六",59.0);
    }
}
